package actions;

import game.constants.ReferenceAction;
import game.constants.ReferenceSpecialFeature;
import interfaces.ActionInterface;
import interfaces.impl.Action;
import objects.SpetialFeature;
import universe.Universe;


public class ActionGatherVespeneGas extends Action{

	@Override
	public ActionInterface cloneAction() {
		ActionGatherVespeneGas action = new ActionGatherVespeneGas();
		action.modifyAction(this);
		return action;
	}

	@Override
	public boolean processActionChild(Universe universe) {
		
		target.setActive(false);
		SpetialFeature vespeneGasQuantity = target.getFeature(ReferenceSpecialFeature.SPETIAL_FEATURE_VESPENE_GAS_QUANTITY);
		SpetialFeature vespeneGasQuantityToGather = target.getFeature(ReferenceSpecialFeature.SPETIAL_FEATURE_VESPENE_GAS_QUANTITY_TO_GATHER);
		
		vespeneGasQuantity.setValue(vespeneGasQuantityToGather.getValue());
		return true;
	}

	@Override
	public void initializeName() {
		name="Action Gather Vespene Gas";
		
	}

	@Override
	public void initializeId() {
		id = ReferenceAction.ACTION_GATHER_VESPENE_GAS;
		
	}

	@Override
	public void modifyChild(ActionInterface action) {
		
		
	}
	
	

}
